<?php
namespace App\Services;

use  App\Models\StorageModel;
use  App\Models\StorageManageModel;

class StorageService {
    //获取仓库列表
    static public function storageList($parentId, $data)
    {
        return $data = StorageModel::getStorageList($parentId, $data);
    }

    //仓库列表-下拉
    static public function storageSelect($parentId)
    {
        return $data = StorageModel::getStorageSelect($parentId);
    }

    //删除指定仓库
    /**
     * @param $data['id'] 仓库id
     */

    static public function delete($data)
    {
        $storageInfo = StorageModel::where($data)->first();
        if(empty($storageInfo)) {
            return ['code' => 1, 'msg' => '目标仓库不存在，无法完成删除'];
        }

        $info = StorageManageModel::getStorageManagerInfoByStorageId($data['id']);

        //当前仓库中是否仍存在物料
        if($info['in_storage_num'] > 0) {
            return ['code' => 1, 'msg' => '当前仓库存在商品，请清空仓库后删除'];
        }
        else {
            StorageModel::where('id', $data['id'])->update(['delete_flag' => 1]);
            StorageManageModel::where('storage_id', $data['id'])->update(['delete_flag' => 1]);
            return ['code' => 0];
        }
    }
}
